1. Field of the Invention
The present invention relates generally to a method and apparatus for data protection, and more particularly, to a method and apparatus that protects data through encryption using a Boolean function.
2. Description of the Related Art
Rapid advances in information and communication technologies and semiconductor technologies have contributed to the popularization of electronic devices. As electronic devices are portable and provide a variety of functions needed by users, they have become a necessity of modern life. For example, such an electronic device may provide various functions related to calls, image or moving image capture, broadcast reception, Internet access, and map services.
Electronic devices may provide an electronic payment function related to, for example, transportation cards, credit cards, and mobile banking. Electronic devices are increasingly used to store digital content of users, such as music files, video files, and authentication certificates. As such, techniques for securing payment information transmitted and received for payment and/or techniques for preventing illegal copy of digital content (e.g. encryption) have attracted increasing attention in recent years. For example, a first electronic device may encrypt confidential data and send the encrypted data to a second electronic device. Upon reception of the encrypted data, the second electronic device must decrypt the received data into the original data.
White-box cryptography, which can safely manage a cipher key through software only and prevent a cryptographic algorithm executed on an untrusted terminal from exposing the cipher key, has attracted attention. However, white-box cryptography may be vulnerable to a certain algebraic attack. For example, white-box Advanced Encryption Standard (AES) implementation based on look-up tables may have a complexity of 228. The cipher key can be extracted by use of a specially designed algebraic attack, but such an extracted cipher key may be misused by a hacker to decrypt encrypted data.